<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // 2、如果一个数恰好等于它的因数（除自身以外）之和，则称该数为“完全数” perfect number。
    //    比如：6的因数有1、2、3，而1+2+3正好等于6，所以6就是完全数
    //    封装一个函数，请列出m~n（m<n）的所有完全数

    function perfectNum (m, n) {
      for (var i = m; i <= n; i++) {
        // 声明一个变量来累加i的所有因数
        var sum = 0
        // 通过循环找到i的所有因数
        for (var j = 1; j < i; j++) {
          // 判断j是否是i的因数
          if (i % j === 0) {
            sum += j
          }
        }
        // 当所有因数加完了以后来判断是否相等
        if (sum === i) {
          console.log(i)
        }
      }
    }

    perfectNum(1, 10000)

  </script>
</body>
</html>